#include "../include/defs.h"
#include "../include/kc.h"
#include "../include/video.h"

extern int CurrentPID;
extern TTY tty[8];

//Funcion que destruye un proceso a partir de su PID
void Destroy(int PID)
{

	PROCESS* proc;
	PROCESS* padre;
	int test;
	char temp[10];
	char temp2[100];
	itoa2(PID,temp);
	proc=(PROCESS*)GetProcessByPID(PID);
	if (!proc->free)
	{
		memcpy2(temp2,"Killed->",8);
		test=strlen2(proc->name)+8;
		memcpy2(&temp2[8],proc->name,test-8);
		temp2[test++]='\0';
		print(temp2);
		tty[proc->tty].buffer.head=0;
		tty[proc->tty].buffer.tail=0;
		if (proc->parent!=0)
		{
			padre=(PROCESS*)GetProcessByPID(proc->parent);
			padre->blocked=0;	
		}
		proc->free = 1;
	}
	else
		print("Proceso Inexistente");
}

void Cleaner(void)
{
	char Men[10];
	_Cli();
	Destroy(CurrentPID);
	clearScreen();
 	print("Ingrese Comando:");
	_Sti();
	while(1);	
}
 
